/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package br.com.seguradora.service;

import br.com.seguradora.model.repository.impl.RepositoryFactoryImpl;
import br.com.seguradora.model.repository.RepositoryFactory;
import br.com.seguradora.exception.PersistenciaException;
import br.com.seguradora.model.Plano;
import br.com.seguradora.model.Veiculo;
import br.com.seguradora.model.repository.TodosPlanos;
import java.util.List;

/**
 *
 * @author Diego
 */
public class PlanoService {

    private TodosPlanos todosPlanos;

    public PlanoService() {
        RepositoryFactory repositoryFactory = new RepositoryFactoryImpl();
        todosPlanos = repositoryFactory.createPlanoRepository();
    }

    public boolean inserir(Plano plano) throws PersistenciaException {
        return todosPlanos.inserir(plano);
    }

    public boolean atualizar(Plano plano) throws PersistenciaException {
        return todosPlanos.atualizar(plano);
    }

    public List<Plano> listarTodos(int... limits) throws PersistenciaException {
        return todosPlanos.listarTodos(limits);
    }

    public List<Plano> listarPelaPlaca(String placa) throws PersistenciaException {
        return todosPlanos.listarPelaPlaca(placa);
    }
    
    public List<Plano> listarPeloAssociado(String associado) throws PersistenciaException {
        return todosPlanos.listarPeloAssociado(associado);
    }
    
    public boolean hasPlano(Veiculo veiculo) throws PersistenciaException {
        return todosPlanos.hasPlano(veiculo);
    }
}
